package tw.asap.plus.network.service;

import java.util.List;

import retrofit.http.Body;
import retrofit.http.POST;
import tw.asap.plus.entity.request.AddAddressRequest;
import tw.asap.plus.entity.request.AddressDelRequest;
import tw.asap.plus.entity.request.CommonRequestParams;
import tw.asap.plus.entity.request.ModifyAddressRequest;
import tw.asap.plus.entity.request.ShopKey;
import tw.asap.plus.entity.response.AddAddress;
import tw.asap.plus.entity.response.Address;
import tw.asap.plus.entity.response.CityList;
import tw.asap.plus.entity.response.ResponseDataWrapper;
import tw.asap.plus.entity.response.ShopIndex;

/**
 * Created by Yax.
 * Date: 15/11/14
 * Time: 上午1:04
 * Description:
 */
public interface UserService {

    @POST("/app/addr/address_get")
    ResponseDataWrapper<List<Address>> getAddress(@Body CommonRequestParams commonRequestParams);

    @POST("/app/addr/address_add")
    ResponseDataWrapper<AddAddress> addAddress(@Body AddAddressRequest addressRequest);

    @POST("/app/addr/address_edit")
    ResponseDataWrapper<AddAddress> modifyAddress(@Body ModifyAddressRequest request);

    @POST("/app/addr/address_del")
    ResponseDataWrapper delAddress(@Body AddressDelRequest request);

    @POST("/app/user/star_list")
    ResponseDataWrapper<List<ShopIndex.ShopEntity>> getMyCollection(@Body CommonRequestParams commonRequestParams);

    @POST("/app/user/star_add")
    ResponseDataWrapper collectShop(@Body ShopKey shopKey);

    @POST("/app/user/star_cancel")
    ResponseDataWrapper cancelCollect(@Body ShopKey shopKey);

    @POST("/app/addr/city_list")
    ResponseDataWrapper<List<CityList>> getCityList(@Body CommonRequestParams commonRequestParams);

}
